home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d1 / bastips2.arc / BASANSI.TXT next >
Text File  |  1988-11-29  |  2KB  |  58 lines

  1.               Accessing the ANSI Driver from BASIC
  2.             (BYTE Magazine November 1986 Best of BIX)
  3.  
  4.      You can access the ANSI driver from BASIC.  You should have the
  5. system boot with the statement:
  6.  
  7. DEVICE=[D][PATH]ANSI.SYS
  8.  
  9. in your CONFIG.SYS file.  To access the driver from BASIC (or any
  10. language) all you have to do is write to the device "CON," which
  11. happens to be stdout.  The driver that you install in your CONFIG.SYS
  12. file will take precedence over the "Glass TTY" console driver that DOS
  13. installs.
  14.      The statement, OPEN "CON" FOR OUTPUT AS #1, will open the stdout
  15. file for writing.  The statement, PRINT #1, "Hello", will print the
  16. word Hello at the current cursor position and also issue a carriage
  17. return line feed sequence.
  18.      The complete subset that the ANSI.SYS driver supports is available
  19. to you through the PRINT #1 statement.  The supported escape sequences
  20. are listed in the DOS Technical Reference Manual.
  21.      For example, suppose you wish to clear the screen, then position
  22. the cursor at line 12, column 20 and print the string "Enter Your Name
  23. Please:".  The following example will do just that:
  24.  
  25. 10 OPEN "CON" FOR OUTPUT AS #1
  26. 20 PRINT #1, CHR$(27);"[2J";
  27. 30 PRINT #1, CHR$(27);"[12;20H";
  28. 40 PRINT #1, "Enter Your Name Please:";
  29. 50 CLOSE #1
  30.  
  31. Line 10 will open the console device for writing.  Line 20 will clear
  32. the screen.  Line 30 will position the cursor at row 12, column 20.
  33. Line 40 will print the string.  Line 50 will close the file.  Note
  34. that the characters are case-sensitive.
  35.  
  36.      The following set of commands allows screen manipulation.
  37.  
  38. 10 OPEN "CON" FOR OUTPUT AS #1
  39. 20 ETB$=CHR$(27)+"[s"
  40. 25 FOR X=1 TO 24:ETB$=ETB$+CHR$(27)+"[k"+CHR$(27)+"[B":NEXT X
  41. 30 ETB$=ETB$+CHR$(27)+"[u"
  42. 40 ENQ$=CHR$(27)+"[s"+CHR$(27)+"[K"+CHR$(270"+[u"
  43.  
  44. You can now clear the screen to the bottom at any time by locating at
  45. the position to clear from and:
  46.  
  47. PRINT #1,ETB$
  48.  
  49. Notice that line 20 includes the cursor position save function as the
  50. first part of the clear to end of screen function.  Line 30 then
  51. returns to the original cursor position.  To clear a single line to
  52. the end, just:
  53.  
  54. PRINT #1,ENQ$
  55.  
  56. The characters are case-sensitive.
  57.  
  58.